永远不会调用Deinit方法-Swift Playground
在下一个代码中,我尝试调用deinit方法以释放对该Person Class实例的所有引用,Mark但从未调用过deinit。为什么?class Person{ let name:String init(name:String){ self.name = name println("Person created") } deinit { println("Person \(name) deinit") }}var Mark:Person...
2024-01-10在Swift 4中刷新userdefaults
是否可以刷新Swift4中的用户默认值?扫描新产品后,这些值会更改,并且它们存储在用户默认值中。所以当你扫描一个新产品时,用户默认必须刷新。在Swift 4中刷新userdefaults我希望有人对我来说回答:设置userdefaults为您设置第一次用相同的密钥的解决方案。UserDefaults.standard.set(value, forKey: key) 回...
2024-01-10Swift,dispatch_group_wait不等待
我正在尝试使用中央集中调度来等待文件完成下载再继续。这个问题是从以下问题衍生出来的:Swift(iOS),等待所有图像下载完成后再返回。我只是在尝试找出如何使dispatch_group_wait(或类似的方法)真正等待,而不仅仅是在下载完成之前继续。请注意,如果我使用NSThread.sleepForTimeInterval而不是调用down...
2024-01-10使用round()在Swift中取整
在玩耍时,我很快发现了round()函数。可以如下使用:round(0.8)它将返回1,如预期的那样。这是我的问题:我希望能够插入一个数字,例如0.6849,然后重新获得0.685。round()如何做到这一点?还是不,在那种情况下,什么功能呢?回答:你可以做:round(1000 * x) / 1000...
2024-01-10Swift viewWillTransition未调用
我正在使用创建全屏图片库UICollectionView。当用户旋转设备,我执行更新的UICollectionView内func viewWillTransition(to size: CGSize, with coordinator:UIViewControllerTransitionCoordinator)我以UIViewController模态呈现,并UICollectionView占据了全屏。在中viewDidLoad,我将流程布局创建为:let flowLayout = UICollectionV...
2024-01-10Swift版本的ComponentsSeparatedByString
我知道它的菜鸟问题,我真的在询问之前四处搜寻。但是我想知道的事情并没有确切的答案。我们如何不使用目标C将字符串拆分为数组?例如:var str = "Today is so hot"var arr = str.componentsSeparatedByString(" ") // *我知道它不起作用,但是我正在寻找那样的东西。我想用“”分割字符串(或其他字符/字符串...
2024-01-10Swift array.capacity与array.count
我了解array.count(数组中元素的数量)。 count对迭代数组的elements很有用 。我有点理解array.capacity的要点一个整数值,表示在不重新分配的情况下阵列可以存储多少个元素(只读)。我一直在操场上玩,发现数组的容量是偶数(增加2)var arr = [1, 2, 3 , 4, 5, 6, 7]arr.removeLast() // capacity stays the same after a ...
2024-01-10使用Codable序列化为JSON时转义Swift String
我正在尝试序列化我的对象,如下所示:import Foundationstruct User: Codable { let username: String let profileURL: String}let user = User(username: "John", profileURL: "http://google.com")let json = try? JSONEncoder().encode(user)if let data = json, let str = String(dat...
2024-01-10Swift-AVAudioPlayer,声音无法正常播放
由于UILocalNotification在应用程序处于活动状态时未显示该消息,因此我尝试配置anUIAlertController并在出现时播放一些声音。我在没问题,AppDelegate可以处理通知/创建警报。我的问题与声音有关。确实,它无法正常播放。这是我到目前为止所拥有的://...class AppDelegate: UIResponder, UIApplicationDelegate {var window...
2024-01-10Swift UnsafeMutablePointer?>分配并打印
我是新手,并且在处理非托管CFString(或NSString)的指针时遇到一些困难。我正在一个CoreMIDI项目上工作,这暗示着使用UnsafeMutablePointer?>,如您在此函数中看到的:func MIDIObjectGetStringProperty(_ obj: MIDIObjectRef, _ propertyID: CFString!, _ str: UnsafeMutablePo...
2024-01-10Swift Json实例详细解析
前言客户端开发项目中,不可避免地需要解析网络数据---将服务端下发的JSON数据解析成客户端可阅读友好的Model。Objective-C下使用最多的是JSONModel,它能在OC Runtime基础下很好地完成解析工作。那么在纯Swift代码中,这个功能是如何实现的?下面开始我们的探索~手动解析原生:Swift4.0 JSONDecoderJSONDecode...
2024-01-10在Swift 3中,是否需要dispatch_once?
好的,所以我在Xcode 8中找到了新的SwiftyDispatchAPI。我在使用中很有趣DispatchQueue.main.async,并且我一直Dispatch在Xcode中的模块周围浏览以找到所有新的API。但是我也要dispatch_once确保单例创建和一次性设置之类的操作不会被执行多次(即使在多线程环境中也是如此)…并且dispatch_once在新的Dispatch模块中找不...
2024-01-10【Electron Playground 系列】文件下载篇
作者:long.woo文件下载是我们开发中比较常见的业务需求,比如:导出 excel。web 应用文件下载存在一些局限性,通常是让后端将响应的头信息改成 Content-Disposition: attachment; filename=xxx.pdf,触发浏览器的下载行为。在 electron 中的下载行为,都会触发 session 的 will-download 事件。在该事件里面可以获取到 d...
2024-01-10在Swift中使用子类实现NSCopying
考虑两个类。第一个是Vehicle,其NSObject子类符合NSCopying:class Vehicle : NSObject, NSCopying { var wheels = 4 func copyWithZone(zone: NSZone) -> AnyObject { let vehicle = self.dynamicType() vehicle.wheels = self.wheels return vehicle }}第二类Sta...
2024-01-10使用InputAccessoryView swift在键盘顶部添加视图
我试图将uiview始终添加到键盘顶部。我首先使用KeyboardWillShow /Hide做到了这一点,但是它并没有涵盖所有情况,因此我尝试使用inputAccesoryView。这是我尝试的:private var accessoryView = UIView(frame: CGRectZero)class ViewController : UIViewController {var myView: customUIViewoverride var inputAccessoryView: UIView...
2024-01-10如何从字符串值Swift中删除Optional
我想使用不带可选扩展名的String值。我使用以下代码从firebase解析此数据:Database.database().reference(withPath: "Locations").child("Cities").observe(.value, with: { (snapShot) in if snapShot.exists() { let array:NSArray = snapShot.children.allObjects as NSArray ...
2024-01-10Swift-覆盖setSelected的UIButton
我在Swift中制作了一个UIButton子类,以在选择时执行自定义绘图和动画Swift - (void)setSelected:(BOOL)selected中的ObjC中的覆盖相当于什么?我试过了override var selected: Bool所以我可以实现一个观察者,但是我得到Cannot override with a stored property 'selected'回答:像其他提到的一样,您可以使用它willSet来检测更改。...
2024-01-10使用Swift的CloudKit上的CKReference
我有一个RecordType Account和另一个Friends。 对于Account我在创建每条记录时设置了RecordID,并且我有一列Name。使用Swift的CloudKit上的CKReference对于朋友我有两栏,Me和MyFriend。 MyFriend是包含帐户的RecordID的参考。如何获取我的朋友的账户名称? 我需要查询朋友才能获取Me是我的RecordID的所有记录,然后我需要...
2024-01-10swift:轻按单元格中的按钮时如何获取indexpath.row?
我有一个带有按钮的表格视图,当我点击其中一个按钮时,我想使用indexpath.row。这是我目前拥有的,但始终为0var point = Int()func buttonPressed(sender: AnyObject) { let pointInTable: CGPoint = sender.convertPoint(sender.bounds.origin, toView: self.tableView) let cellIndexPath = self.tableVie...
2024-01-10SKPhysicsBody避免碰撞Swift / SpriteKit
我的场景中有3个SKSpriteNodes。现场有 ,一枚 和一个 。我不想 和 互相碰撞,而是与 碰撞。我为每个节点分配了一个不同的collisionBitMask和categoryBitMask:enum CollisionType:UInt32{ case Bird = 1 case Coin = 2 case Border = 3 }像这样:bird.physicsBody!.categoryBitMask = CollisionType.Bird.rawValuebi...
2024-01-10Swift:使用GCDAsyncUdpSocket接收UDP
背景:我希望能够在我的iOS应用程序和服务器之间发送和接收UDP数据包。服务器将所有传入消息回显给应用程序客户端。 。我有一个StartViewController,它启动了两个实现GCDAsyncUdpSocketDelegate的类,一个用于发送,一个用于接收。“发送套接字”正在工作,服务器接收到消息。问题:在发送后,该应用程...
2024-01-10Swift将.uppercaseString仅应用于字符串的第一个字母
我正在尝试制作一个自动更正系统,并且当用户键入一个带有大写字母的单词时,自动更正不起作用。为了解决此问题,我复制了键入的字符串,并应用了.lowercaseString,然后对其进行了比较。如果确实输入了错误的字符串,则应更正单词。但是,替换键入的单词的单词全部为小写。所以我只需要将.upper...
2024-01-10在Swift中从AppDelegate获取ViewController的实例
当用户单击UILocalNotification时,我试图迅速从应用程序委托中加载特定的ViewController。我已经知道这是在此函数中调用的:func application(application: UIApplication!, didReceiveLocalNotification notification: UILocalNotification!)但是当我尝试访问一个打开的ViewController时,我认为它返回null,因为我的应用程序崩溃了。这是我...
2024-01-10如何在Swift中设置UIBarButtonItem的操作
如何在Swift中设置自定义UIBarButtonItem的操作?以下代码将按钮成功放置在导航栏中:var b = UIBarButtonItem(title: "Continue", style: .Plain, target: self, action:nil)self.navigationItem.rightBarButtonItem = b现在,我想func sayHello() { println("Hello") }在触摸按钮时打电话。到目前为止,我的努力:var b = UIBarButton...
2024-01-10在iOS Swift中获得顶级ViewController
我想实现一个单独的ErrorHandler类,该类在某些事件上显示错误消息。该类的行为应从其他不同的类中调用。发生错误时,它将有一个UIAlertViewas输出。此AlertView的显示应始终位于顶部。因此,无论从何处引发错误,最顶层的viewController都应显示AlertMessage(例如,当异步后台进程失败时,无论在前台显示什...
2024-01-10